package com.bestow.loan.service;

import java.util.List;
import com.bestow.loan.domain.InvFinancePurchase;
import com.bestow.loan.domain.InvPurchaseRollOut;

/**
 * 申购/赎回管理Service接口
 * 
 * @author liliu
 * @date 2022-09-04
 */
public interface IInvFinancePurchaseService 
{
    /**
     * 查询申购/赎回管理
     * 
     * @param financePurchaseId 申购/赎回管理主键
     * @return 申购/赎回管理
     */
    public InvFinancePurchase selectInvFinancePurchaseByFinancePurchaseId(Long financePurchaseId);

    /**
     * 查询申购/赎回管理列表
     * 
     * @param invFinancePurchase 申购/赎回管理
     * @return 申购/赎回管理集合
     */
    public List<InvFinancePurchase> selectInvFinancePurchaseList(InvFinancePurchase invFinancePurchase);

    /**
     * 新增申购/赎回管理
     * 
     * @param invFinancePurchase 申购/赎回管理
     * @return 结果
     */
    public int insertInvFinancePurchase(InvFinancePurchase invFinancePurchase);

    /**
     * 修改申购/赎回管理
     * 
     * @param invFinancePurchase 申购/赎回管理
     * @return 结果
     */
    public int updateInvFinancePurchase(InvFinancePurchase invFinancePurchase);

    /**
     * 批量删除申购/赎回管理
     * 
     * @param financePurchaseIds 需要删除的申购/赎回管理主键集合
     * @return 结果
     */
    public int deleteInvFinancePurchaseByFinancePurchaseIds(Long[] financePurchaseIds);

    /**
     * 删除申购/赎回管理信息
     * 
     * @param financePurchaseId 申购/赎回管理主键
     * @return 结果
     */
    public int deleteInvFinancePurchaseByFinancePurchaseId(Long financePurchaseId);

    /**
     * 保存申购/赎回管理
     *
     * @param invFinancePurchase 申购/赎回管理
     * @param invPurchaseRollOutList 申购账户信息list
     * @return 结果
     */
    public int saveInvFinancePurchase(InvFinancePurchase invFinancePurchase, List<InvPurchaseRollOut> invPurchaseRollOutList);
}
